package com.cskaoyan.com.mylist;

import java.util.ArrayList;

public class Demo1 {
    public static void main(String[] args) {

        // 我Demo1.main是个使用者, 要求你能存数据
        MyLinkedList myLinkedList = new MyLinkedList();

//        myLinkedList.add(null);
        myLinkedList.add("zs");
        myLinkedList.add("ls");
        myLinkedList.add("wu");
        myLinkedList.add("zl");

        // zs  ls  wu  zl

        // aa  zs  ls  wu  zl
        myLinkedList.add(0, "aa");
        // aa  zs  ls  bb wu  zl
        myLinkedList.add(3, "bb");
        // aa  zs  ls  bb wu  zl  cc
        myLinkedList.add(6, "cc");


        // zs  ls  bb wu  zl  cc
        String remove = myLinkedList.remove(0);
        // zs   bb wu  zl  cc
        myLinkedList.remove(1);
        // zs   wu  zl  cc
        myLinkedList.remove(1);
        // zs   wu  zl
        myLinkedList.remove(3);

//        boolean contains = myLinkedList.contains(null);
//        myLinkedList.set("ls", "aa");
//
        System.out.println(myLinkedList.get(2));
        System.out.println(myLinkedList.get(1));
        System.out.println(myLinkedList.get(0));


        // 简单完成了, 一个使用单向链表实现一个数据结构为线性表的数据容器/集合类

//        boolean wu = myLinkedList.contains("wu");
//        System.out.println(wu);
//
//
//         myLinkedList.remove("wu");
//
//        boolean wu2 = myLinkedList.contains("wu");
//        System.out.println(wu2);


//        System.out.println(myLinkedList);

//        myLinkedList.remove("zs");
//        myLinkedList.contains("zs");
//        myLinkedList.set("zs", "ls");

//        myLinkedList.add(0, "zs");
//        myLinkedList.remove(0);
//        myLinkedList.get(0);
//        myLinkedList.set(0, "ls");

//        boolean empty = myLinkedList.isEmpty();
//        int size = myLinkedList.size();
//        // 解耦




//        ArrayList arrayList = new ArrayList();
//        arrayList.add("zs");
//        arrayList.remove("zs");
//        arrayList.contains("zs");
//        arrayList.set(1, "bb");
    }
}
